﻿#include "mysql.h"

mySql::mySql()
{
    if(QSqlDatabase::contains("qt_sql_default_connection"))
    {
        database=QSqlDatabase::database("qt_sql_default_connection");
    }
    else
    {
        database=QSqlDatabase::addDatabase("QSQLITE");
        database.setDatabaseName("wxx.db");
    }
}

void mySql::openbase()
{
    database.open();
}

bool mySql::isExist(QString table)
{
    if(database.tables().contains(table))
        return true;
    else
        return false;
}

void mySql::createTable()
{
    QSqlQuery que;
    que.prepare("CREATE TABLE weathe(\
                time TEXT,\
                week TEXT,\
                type TEXT,\
                low TEXT,\
                high TEXT)");
            if(!que.exec()) qDebug()<<que.lastError();
}

void mySql::addData(forecast day)
{
    QSqlQuery que;
    que.prepare("INSERT INTO weathe VALUES(?,?,?,?,?)");
    que.addBindValue(day.ymd);
    que.addBindValue(day.week);
    que.addBindValue(day.high);
    que.addBindValue(day.low);
    que.addBindValue(day.high);
    if(!que.exec()) qDebug()<<que.lastError();
}

void mySql::closeBase()
{
    database.close();
}

void mySql::createCityTab()
{
    QSqlQuery que;
    que.prepare("CREATE TABLE cityCode(\
                city TEXT,\
                code TEXT)");
            if(!que.exec()) qDebug()<<que.lastError();
}

void mySql::addCity(city info)
{
    QSqlQuery que;
    que.prepare("INSERT INTO cityCode VALUES(?,?)");
    que.addBindValue(info.name);
    que.addBindValue(info.code);
    if(!que.exec()) qDebug()<<que.lastError();
}

void mySql::dropTable(QString table)
{
    QSqlQuery que;
    que.prepare("DROP TABLE table");
    que.addBindValue(table);
    if(que.exec())
    {
        qDebug("删除成功");
    }
}

void mySql::findData(QString name)
{
    QSqlQuery que;
    que.prepare("SELECT * FROM cityCode WHERE name=?");
    que.addBindValue(name);
    if(que.exec())
    {
        while(que.next())
        {
            qDebug()<<que.value(0).toString()<<"  "<<que.value(1).toString();
        }
    }
}


